package com.gupaoedu;

/**
 * 线程可见性问题
 * 该程序会输出一段时间的   "正在执行while循环代码......"
 * 因为主线程修改了flag的状态为false，但是子线程没有立即感知得到
 */
public class ThreadVolitileDemo {
    public static boolean flag = true;
    public static void main(String[] args) {
        Thread thread= new Thread(()->{
            while (flag){
                System.out.println("正在执行while循环代码......");
            }
            System.out.println("退出while循环了......");
        });
        thread.start();
        try{
            Thread.sleep(2000);
        }catch (Exception e ){

        }
        flag = false;
        System.out.println("已经将flag改为false了......");
    }
}
